//给你一个整数数组 nums() ，其中总是存在 唯一的 一个最大整数 。请你找出数组中的最大元素并检查它是否 至少
//是数组中每个其他数字的两倍 。如果是，则返回 最大元素的下标 ，否则返回 - 1 。
//思路：排序（冒泡排出两个最大值即可）
#include<stdio.h>
void Swap(int* x, int* y)
{
	int tmp = *x;
	*x = *y;
	*y = tmp;
	return;
}
int dominantIndex(int* nums, int numsSize) 
{
	if (numsSize == 1) {
		return 0;
	}
	int i, j, flag, t;
	i = 2;
	j = 0;
	flag = 0;
	t = 0;
	while (i) 
	{
		i--;
		for (j = 0; j < numsSize - 1 - flag; j++) 
		{
			if (nums[j] > nums[j + 1]) {
				Swap(&nums[j], &nums[j + 1]);
			}
			else {
				if (i == 1)
					t = j + 1;
			}
				
		}
		flag++;
	}
	if (nums[numsSize - 1] >= 2 * nums[numsSize - 2]) {
			return t;
		}
	return -1;
}
int main()
{
	int arr[] = {4};
	int sz = sizeof(arr) / sizeof(arr[0]);
	printf("%d\n", dominantIndex(arr, sz));
	return 0;
}
